﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Biblioteca.Interfaces;
using System.Data;

namespace Biblioteca.Models
{
    public class UsuarioModel : IUsuario
    {
        private BibliotecaStore db;

        public UsuarioModel(BibliotecaStore data)
        {
            this.db = data;
        }

        public void crearUsuario(Usuario usuario)
        {
            db.Usuarios.AddObject(usuario);
            db.SaveChanges();
        }

        public void modificarUsuario(Usuario usuario)
        {
            db.Usuarios.Attach(usuario);
            db.ObjectStateManager.ChangeObjectState(usuario, EntityState.Modified);
            db.SaveChanges();
        }

        public void eliminarUsuario(Usuario usuario)
        {
            db.Usuarios.DeleteObject(usuario);
            db.SaveChanges();
        }

        public Usuario getSingle(int id)
        {
            return db.Usuarios.Single(u => u.IdUsuario == id);
        }
        public IList<Usuario> getAll()
        {
            return db.Usuarios.Include("TipoUsuario").ToList();
        }
    }
}